use thiserror::Error;

mod block_and_index;
mod misc_item;
mod transaction_and_index;

pub use block_and_index::BlockAndIndexStorageWithCache;
pub use misc_item::MiscItemStorageWithCache;
pub use transaction_and_index::TransactionAndIndexStorageWithCache;

#[derive(Error, Debug, PartialEq)]
pub enum TopStorageError {
    #[error("BlockDataStorageError:: {0}")]
    BlockDataStorageError(#[from] bc_block_data::BlockDataStorageError),

    #[error("CacheMissOfBlockIndexNode")]
    CacheMissOfBlockIndexNode(String),
}
